package jp.co.sharp.android.parents.kidsguard.dto;

import java.io.Serializable;
import java.util.Objects;

public class BluetoothItemDto implements Serializable, Cloneable {

    private String bluetoothName;
    private String macAddress;
    private String deviceNickName;
    private String macId;
    // 0: 認証
    private String deviceStatus;
    private String kidAvatar;
    // true: 開く  false:
    private boolean mimamoriState = false;
    private String kidPhone;

    public BluetoothItemDto() {

    }

    public BluetoothItemDto(String bluetoothName, String macAddress, String macId, String deviceNickName) {
        this.bluetoothName = bluetoothName;
        this.macAddress = macAddress;
        this.macId = macId;
        this.deviceNickName = deviceNickName;
    }

    public String getBluetoothName() {
        return bluetoothName;
    }

    public void setBluetoothName(String bluetoothName) {
        this.bluetoothName = bluetoothName;
    }

    public String getMacAddress() {
        return macAddress;
    }

    public void setMacAddress(String macAddress) {
        this.macAddress = macAddress;
    }

    public String getDeviceNickName() {
        return deviceNickName;
    }

    public void setDeviceNickName(String deviceNickName) {
        this.deviceNickName = deviceNickName;
    }

    public String getMacId() {
        return macId;
    }

    public void setMacId(String macId) {
        this.macId = macId;
    }

    public String getDeviceStatus() {
        return deviceStatus;
    }

    public void setDeviceStatus(String deviceStatus) {
        this.deviceStatus = deviceStatus;
    }

    public String getKidAvatar() {
        return kidAvatar;
    }

    public void setKidAvatar(String kidAvatar) {
        this.kidAvatar = kidAvatar;
    }

    public boolean isMimamoriState() {
        return mimamoriState;
    }

    public void setMimamoriState(boolean mimamoriState) {
        this.mimamoriState = mimamoriState;
    }

    public String getKidPhone() {
        return kidPhone;
    }

    public void setKidPhone(String kidPhone) {
        this.kidPhone = kidPhone;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        BluetoothItemDto that = (BluetoothItemDto) o;
        return mimamoriState == that.mimamoriState &&
                Objects.equals(bluetoothName, that.bluetoothName) &&
                Objects.equals(macAddress, that.macAddress) &&
                Objects.equals(deviceNickName, that.deviceNickName) &&
                Objects.equals(macId, that.macId) &&
                Objects.equals(deviceStatus, that.deviceStatus) &&
                Objects.equals(kidAvatar, that.kidAvatar) &&
                Objects.equals(kidPhone, that.kidPhone);
    }

    @Override
    public int hashCode() {
        return Objects.hash(bluetoothName, macAddress, deviceNickName, macId, deviceStatus, kidAvatar, mimamoriState, kidPhone);
    }

    @Override
    public Object clone() throws CloneNotSupportedException {
        Object obj = super.clone();
        return obj;
    }
}
